Isogeometric analysis on adaptive grids
Adaptive meshes made of rectangular elements of various sizes also allow for calculations using isogeometric analysis. First, if the group of the elements are separated with \( C^0 \) separators, then on each block of elements we can generate knot vectors describing the basis functions, and merge them as described in the chapter Approximation on meshes with hanging nodes.
Another widely used approach is the use of T-spline basis functions. They were invented in 2003 by Thomas Sederberg and other authors [1]. They even have a patent in the USA [2]. T-spline functions are used in isogeometric analysis [3]. They are a modification of the B-spline function which allows them to be spanned on adaptive nets. Each B-spline function spans a series of horizontal and vertical segments that define the group of elements on which it is defined (on which it takes non-zero values). The point at which it takes its maximum value is either at the center of the element (for even-order B spline) or at the vertex at the element edges (for odd-order B-spline). So, we can think of B spline functions as functions related to element centers or mesh vertices (depending on the degree of the B spline function). B-spline order function \( p \) unzips on \( 2p-1 \) items. For example, for a second order B spline function we have \( 2*2-1=3 \) elements, i.e., one element with the center (maximum function) and one element on the left and one element on the right. If we draw a horizontal line from the center of the B-spline to the left and right, and find the intersection of this line with the edges of the elements, then for a second-degree B-spline we need to find two intersections on the left and two intersections on the right, and we get all the segments unfastened on the elements on which our B-spline is unfastened.
The idea behind the T-spline function is to generalize this idea to adaptive meshes. Consider an even degree of the T-spline function. If we have an adapted mesh with elements of different sizes, then we can bind each T-spline function to the center of some element. Then, along the lines in the vertical and horizontal directions, we find intersections with the edges of the elements. For the second-degree T-spline, we need to find two intersections in each direction. In this way, we get three segments in the vertical and horizontal directions on which we span T-spline functions according to the formula for B-spline functions. We just take four points and put it in the formula for B-spline.
The process of determining the vertical and horizontal segments for the T-spline function is illustrated in Fig. 1.
Such a way of defining the T-spline function on a mesh adapted towards a point, as shown in Fig. 1 has one drawback. Note that if we want to use our T-spline functions for approximation, we will have to build a matrix in which the rows and columns represent the individual T-spline functions, while the terms of this matrix denote the integrals of the products of these functions and their values. These integrals are non-zero if the corresponding T-spline functions intersect. For an example set of T-spline functions, the generated matrix (for example, for a bitmap projection problem or for a heat transport problem) appears as shown in Fig. 1. You can see that this matrix is relatively dense.
In order to reduce the areas in which T-spline functions are defined, extensions are introduced to extend the edges on which nodes hang in the adaptive mesh (in English these extensions are called "T-junction extensions"). This is illustrated in Fig. 2. When the mesh is modified to add these additional edges, the mesh is now said to be "analysis suitable". The idea of mesh modification algorithm for T-spline functions is described in detail in the paper [4].
After modifying the mesh, we generate new T-spline functions, see Fig. 3.
The newly generated T-splines functions generate a computational mesh that is larger but the computational cost of its factorization is cheaper, see [5] and Fig. 4.
Bibliography
1. Thomas W. Sederberg, Jianmin Zheng, Almaz Bakenov, Ahmad Nasri: T-splines and T-NURCCS, ACM Transactions on Graphics, San Diego, California 2003, dostęp:18.10.20192. Thomas W. Sederberg: System and method for defining T-spline and T-NURCC surfaces using local refinements, US Patent, AUTODESK 2003, dostęp:18.10.2019
3. Y. Bazilevs, V.M. Calo, J.A. Cottrell, J.A. Evans, T.J.R. Hughes, S. Lipton, M.A. Scott, T.W. Sederberg: Isogeometric analysis using T-splines, Computer Methods in Applied Mechanics and Engineering, Elsevier 2010, dostęp:18.10.2019
4. L. Beirao da Veiga, A. Buffa, G. Sangalli, R. Vazquez: Analysis-suitable T-splines of arbitrary degree: definition and properties, Mathematical Models and Methods in Applied Sciences, 23(11) 2013, dostęp:20.12.2020
5. A. Paszynska, M. Paszynski: Computational Costs of Multi-Frontal Direct Solvers with Analysis-Suitable T-Splines, Symmetry 12(12), Switzerland 2013, dostęp:20.12.2020